/*
 * 功能概要：系统异常基类
 * 功能ＩＤ：
 * 
 * [修改履历]
 * [日期]       [担当]      [类型] [内容]
 * 2010/04/27  wangcb      新建 
 */
package com.andf.common.exception;

public class AppException extends Exception
{
    private static final long serialVersionUID = 4003269379948845007L;

	/* *异常编码* */
    private String code ;
    
    /* *异常信息* */
    private String message ;
    
    /* *异常类* */
    private Exception e ;
    
    
    /**
     * 异常类构造方法
     * @param code     异常编码
     * @param message  异常信息
     */
    protected AppException( String code, String message )
    {
        this.code = code ;
        this.message = message ;        
    }
    
    /**
     * 异常类构造方法
     * @param code     异常编码
     * @param e        异常类
     */
    protected AppException( String code, Exception e )
    {
        this.code = code ;
        this.e = e ;
        
        if( e != null && e.getMessage() != null )
        {
            this.message = e.getMessage() ;
        }
    }
    
    /**
     * 异常类构造方法
     * @param code     异常编码
     * @param message  异常信息
     * @param e        异常类
     */
    protected AppException( String code, String message, Exception e )
    {
        this.code = code ;
        this.message = message ;
        this.e = e ;
    }

    
    /**
     * 获取异常编码
     * @return String
     */
    public String getCode()
    {
        return code;
    }

    /**
     * 获取异常信息
     * @return String
     */
    public String getMessage()
    {
        return message;
    }

    /**
     * 获取异常类
     * @return Exception
     */
    public Exception getE()
    {
        return e;
    }
}
